1. Field of the Invention
The present invention relates generally to transferring wafers among modules of semiconductor processing equipment, and more particularly to dynamic alignment of each wafer with a support blade that carries the wafer, wherein dynamic alignment apparatus and methods define, as a statement of an optimization program, the determination of an approximate value of an offset of the wafer with respect to a desired location of the wafer in a module.
2. Description of the Related Art
In the manufacture of semiconductor devices, process chambers are interfaced to permit transfer of wafers or substrates, for example, between the interfaced chambers. Such transfer is via transport modules that move the wafers, for example, through slots or ports that are provided in the adjacent walls of the interfaced chambers. Transport modules are generally used in conjunction with a variety of wafer processing modules, which may include semiconductor etching systems, material deposition systems, and flat panel display etching systems. Due to the growing demands for cleanliness and high processing precision, there has been a growing need to reduce the amount of human interaction during and between processing steps. This need has been partially met with the implementation of vacuum transport modules which operate as an intermediate wafer handling apparatus (typically maintained at a reduced pressure, e.g., vacuum conditions). By way of example, a vacuum transport module may be physically located between one or more clean room storage facilities where wafers are stored, and multiple wafer processing modules where the wafers are actually processed, e.g., etched or have deposition performed thereon. In this manner, when a wafer is required for processing, a robot arm located within the transport module may be employed to retrieve a selected wafer from storage and place it into one of the multiple processing modules.
As is well known to those skilled in the art, the arrangement of transport modules to xe2x80x9ctransportxe2x80x9d wafers among multiple storage facilities and processing modules is frequently referred to as a xe2x80x9ccluster tool architecturexe2x80x9d system. FIG. 1 depicts a typical semiconductor process cluster architecture 100 illustrating the various chambers that interface with a vacuum transport module 106. Vacuum transport module 106 is shown coupled to three processing modules 108a-108c which may be individually optimized to perform various fabrication processes. By way of example, processing modules 108a-108c may be implemented to perform transformer coupled plasma (TCP) substrate etching, layer depositions, and/or sputtering.
Connected to vacuum transport module 106 is a load lock 104 that may be implemented to introduce wafers into vacuum transport module 106. Load lock 104 may be coupled to a clean room 102 where wafers are stored. In addition to being a retrieving and serving mechanism, load lock 104 also serves as a pressure-varying interface between vacuum transport module 106 and clean room 102. Therefore, vacuum transport module 106 may be kept at a constant pressure (e.g., vacuum), while clean room 102 is kept at atmospheric pressure.
Consistent with the growing demands for cleanliness and high processing precision, the amount of human interaction during and between processing steps has been reduced by the use of robots for wafer transfer. Such transfer may be from the clean room 102 to the load lock 104, or from the load lock 104 to the vacuum transport module 106, or from the vacuum transport module 106 to a processing module 108a, for example. While such robots substantially reduce the amount of human contact with each wafer, problems have been experienced in the use of robots for wafer transfer. For example, in a clean room a blade of a robot may be used to pick a wafer from a cassette and place it on fingers provided in the load lock 104. However, the center of the wafer may not be accurately positioned relative to the fingers. As a result, when the blade of the robot of the vacuum transport module 106 picks the wafer from the fingers of the load lock 104, the center of the wafer may not be properly located, or aligned, relative to the center of the blade. This improper wafer center-blade center alignment, also referred to as xe2x80x9cwafer-blade misalignmentxe2x80x9d or simply xe2x80x9cwafer misalignment,xe2x80x9d continues as the robot performs an xe2x80x9cextendxe2x80x9d operation, by which the blade (and the wafer carried by the blade) are moved through a slot in the processing module and by which the wafer is placed on pins in the processing module 108a, for example.
Even if there was proper original wafer-blade alignment when the wafer was initially placed in the exemplary processing module 108a, and even though the wafer may have thus been properly aligned during processing in the exemplary processing module 108a, the proper alignment may be interfered with. For example, electrostatic chucks generally used in the exemplary processing modules 108a may have a residual electrostatic field that is not completely discharged after completion of the processing. In this situation, the processed wafer may suddenly become detached from the chuck. As a result, the wafer may become improperly positioned with respect to the robot blade that picks the processed wafer off the chuck. Thus, when the blade of the robot of the vacuum transport module 106 picks the processed wafer off the chuck, the center of the wafer may not be properly located, or aligned, relative to the center of the blade. This wafer misalignment may continue as the robot performs a xe2x80x9cretractxe2x80x9d operation, by which the blade (and the wafer carried by the blade) are moved through the slot in the processing module 108a. Such wafer misalignment may also continue during a subsequent extend operation by which the wafer is placed in another one of the processing modules 108b, or in the load lock 104.
The above-described wafer misalignment before an extend operation (which may continue to the time at which the wafer is placed on pins in the processing module 108a), and the above-described wafer misalignment before a retract operation (which may continue during a subsequent extend operation by which the wafer is placed in another one of the processing modules 108b, or in the load lock 104) results in placement of the wafer at a location that is offset from a desired location on the pins of the module 108a or module 108b or in the load lock 104.
Wafer misalignment, and resulting offset, are sources of wafer processing errors, and are of course to be avoided. It is also clear that the amount of time the robots take to transfer a wafer among the modules (the xe2x80x9cwafer transfer time periodxe2x80x9d) is an amount of time that is not available for performing processing on the wafer, i.e., the wafer transfer time period is wasted time. Thus, there is an unfilled need to both monitor the amount of such wafer misalignment, and to perform such monitoring without increasing the wafer transfer time period. One aspect of monitoring the amount of wafer misalignment, or of determining the amount of such wafer offset, is the period of time required to compute the offset (the xe2x80x9coffset computation time periodxe2x80x9d). If increases in the wafer transfer time period are to be avoided yet the amount of such wafer offset is to be determined to a sufficient degree of offset accuracy before the wafer is placed relative to the desired location, the offset computation time period must be no more than a portion of the wafer transfer time period.
A problem complicating such monitoring of wafer misalignment is that a wafer may be transferred from (or to) the one vacuum transport module 106 to (or from) as many as six, for example, processing modules, e.g., 108a. In the past, attempts to determine whether a wafer is properly aligned on the blade of a robot have included use of many sensors between adjacent modules. Sensors on opposite sides of a wafer transfer path have been located symmetrically with respect to the wafer transfer path. The symmetrically opposed sensors produce simultaneous output signals, and one data processor has to be provided for each such sensor. The combination of these factors (i.e., the possible use of six processing modules plus the vacuum transport module, the use of many symmetrically located opposing sensors per module, and the use of one data processor per sensor) result in increased complexity and the need for many costly processors for a cluster tool architecture. In view of the need to provide cluster tool architectures that are more cost-efficient, the incorporation of separate data processors for each sensor can make a system prohibitively expensive.
Another aspect of providing cluster tool architectures that are more cost-efficient relates to the cost of machining the modules and the load locks to provide apertures in which sensors, such as through-beam sensors, may be received. As the accuracy of such machining is increased to more accurately locate the sensors with respect to the robots, for example, there are increased costs of such precision machining. What is needed is a way of requiring less accuracy in machining the apertures for the sensors without sacrificing the accuracy of detections made using the sensors.
The use of such through-beam sensors also presents problems in the design of apparatus for monitoring wafer misalignment. For example, when a wafer moves through a light beam of such a through-beam sensor and breaks the beam, it takes a period of time (latency period) for the sensor to output a pulse indicative of the breaking of the beam. Since the wafer is moving relative to the sensor, and when the purpose of the sensor is to determine the location of the wafer, by the time the output pulse is generated (at the end of the latency period) the wafer will have moved from the location of the wafer when the beam was broken. The latency period is a source of errors in the use of the through-beam sensors. What is also needed then is a way of reducing the errors caused by the latency period of through-beam sensors.
In view of the foregoing, there is a need for methods and apparatus for wafer alignment that operate while the wafer is being transported without increasing the wafer transport time period (e.g., without reducing the rate of transfer of the wafer among the modules or load locks nor increasing the total required to transfer a wafer to the desired location). Such method and apparatus should not only avoid having an offset computation time period longer than the wafer transfer time period, but should also result in determinations of the wafer offset having a significantly improved degree of accuracy. Further, the number of data processors per sensor should be reduced, and there should be a reduction of the total number of data processors used for determination of wafer misalignment in an entire cluster tool architecture. Such method and apparatus desirably also require less accuracy in machining the apertures for the sensors, without sacrificing the accurary of detections made using the sensors. Another aspect of the desire method and apparatus is to reduce errors resulting from the latency period in using through-beam sensors to make wafer alignment determinations.
Broadly speaking, the present invention fills these needs by providing dynamic alignment of each wafer with a support blade that carries the wafer. Dynamic alignment apparatus and methods define the determination of an approximate value of an offset of the wafer with respect to a desired location of the wafer on the support blade, and this determination is in terms of a statement of an optimization program. By stating the task of determination of this approximate offset value with respect to an optimization program, the offset computation time period required to compute the approximate value of the offset effectively stays within the wafer transfer time period, and the probability of a successful convergence to a precise value of the offset is higher than with non-optimization programs.
One aspect of the present invention is a method and apparatus for determining an amount of an unknown offset of a wafer with respect to a desired location, wherein the wafer is picked up from a first location using an end effector and the end effector is moved to transfer the picked up wafer from the first location past a set of sensors to produce sensor data. By processing the sensor data using an optimization program, this aspect effectively keeps the offset computation time period required for the determination of the approximate value of the unknown offset less than the wafer transfer time period. When the optimization program is a most preferred simplex algorithm, there is not only a very high probability that the approximate value of the offset will be determined within the offset computation time period, but the determined approximate value of the offset will be substantially more accurate than that obtained using such non-optimization programs as the geometric program, for example.
Another aspect of the present invention relates to the event of an unknown offset of a wafer, such that the picking up operation results in the picked up wafer being misaligned with respect to a desired position of the picked up wafer on the end effector. When the desired location corresponds to original target coordinates to which the end effector normally moves, the original target coordinates are modified to compensate for the approximate value of the offset. The end effector is then caused to place the picked up wafer at the modified target coordinates to compensate for the unknown offset and the misalignment.
A further aspect of the present invention defines the unknown offset as xe2x80x9cexe2x80x9d within a coordinate system centered at the desired wafer location. The unknown offset xe2x80x9cexe2x80x9d has components xe2x80x9cex,xe2x80x9d and xe2x80x9ceyxe2x80x9d extending from the center of the coordinate system to the center of the misaligned wafer. A processing operation expresses the sensor data in terms of a vector extending from the center of the coordinate system to each of the effective locations of each of the sensors at the time at which the moving wafer causes a particular one of the sensors to produce the sensor data. Such expressing results in a set of the vectors, the set being identified as xe2x80x9crp,xe2x80x9d where xe2x80x9cixe2x80x9d varies from 1 to 4, each of the vectors xe2x80x9crpixe2x80x9d having a first component xe2x80x9crpixxe2x80x9d and a second component xe2x80x9crpiyxe2x80x9d. The present invention determines the value of the components xe2x80x9cex,xe2x80x9d and xe2x80x9ceyxe2x80x9d which will minimize the sum of the squares of the distances between each vector and the adjacent wafer edge as defined by the vectors xe2x80x9crpixe2x80x9d. The function to be minimized is given by:   F  =            ∑              i        =        1            4        ⁢          xe2x80x83        ⁢                  [                  R          -                                                                      (                                                            r                      pix                                        -                                          e                      x                                                        )                                2                            +                                                (                                                            r                      piy                                        -                                          e                      y                                                        )                                2                                                    ]            2      
and the wafer has a radius xe2x80x9cRxe2x80x9d from a center of the wafer to an edge of the wafer.
Yet another aspect of the present invention is that the processing operation is further performed by determining a minimum value of xe2x80x9cFxe2x80x9d as defined in the last mentioned equation by repeatedly solving for xe2x80x9cFxe2x80x9d by substituting a plurality of values of xe2x80x9cexxe2x80x9d, and xe2x80x9ceyxe2x80x9d until the lowest value of xe2x80x9cFxe2x80x9d is obtained.
A still further aspect of the present invention relates to a method for determining an amount of an unknown offset of a wafer with respect to a desired location within a wafer handling system. In this aspect a robot having an end effector is used to support and move the wafer past a set of sensors adjacent to a particular facet of the wafer handling system to produce sensor trigger data. Calibrated sensor position data is provided indicating the effective position of each sensor with respect to the particular facet. Processing of the sensor trigger data, of the corresponding position of the end effector, and of the sensor position data is performed using an optimization program to determine an approximate value of the unknown offset.
A related aspect of the present invention provides that the processing operation determines wafer edge location vectors (identified as xe2x80x9crpixe2x80x9d) in a coordinate system centered on the desired location of the wafer on the blade. The processing operation uses the sensor location as defined by a calibration process and the location of the robot blade when each sensor is triggered to determine the vectors xe2x80x9crpixe2x80x9d. The last-mentioned determining uses the calibrated sensor position data, the robot blade position, and the sensor trigger data.
A still related aspect of the present invention provides that in the processing operation the term xe2x80x9cixe2x80x9d has the values 1, 2, 3, and 4 representing four of the items of sensor trigger data; wherein each of the corresponding four vectors xe2x80x9crpixe2x80x9d has an xe2x80x9cXxe2x80x9d axis and a xe2x80x9cYxe2x80x9d axis component. The processing of the optimization program determines the location of the wafer that best fits the four wafer edge locations, wherein the best fit location is obtained by optimizing solutions to the above-described equation, wherein xe2x80x9cRxe2x80x9d is the radius of the wafer, xe2x80x9crpix is an xe2x80x9cXxe2x80x9d axis component of xe2x80x9crpi,xe2x80x9d xe2x80x9crpiyxe2x80x9d is a xe2x80x9cYxe2x80x9d axis component of xe2x80x9crpixe2x80x9d, xe2x80x9cexxe2x80x9d is a selected xe2x80x9cXxe2x80x9d axis component of an approximation of the unknown offset, xe2x80x9ceyxe2x80x9d is a selected xe2x80x9cYxe2x80x9d component of an approximation of the unknown offset, and optimization is performed using a two dimensional simplex algorithm.
One further aspect of the present invention relates to a computer for determining an amount of an unknown offset of the wafer with respect to the desired wafer location. The computer is programmed to perform operations including first causing the wafer to be picked up from a first location by an end effector. Also, there is second causing the end effector to move and transport the picked up wafer from the first location past a set of sensors to produce sensor data. Finally, programming processes the sensor data using an optimization program to determine an approximate value of the unknown offset.
By the described aspects of determining the amount of such wafer offset, the offset computation time period is normally less than the wafer transfer time period, and is normally substantially less than the wafer transfer time period. As compared to the geometric (non-optimization) techniques, the optimization programs provide significantly less error in the value determined for the offset.